package ar.com.jendrix.login.persistence.entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

import ar.com.jendrix.common.persistence.entity.BaseEntity;

@Entity
@Table(name = "usuario")
@SuppressWarnings("serial")
public final class Usuario extends BaseEntity {

	@Id
	@SequenceGenerator(name = "id", sequenceName = "usuario_seq")
	@GeneratedValue(strategy = GenerationType.AUTO, generator = "id")
	@Column(name = "usuario_id", unique = true)
	private Long usuarioId;

	@Column(name = "login", length = 50, unique = true)
	private String login;

	@Column(name = "password")
	private String password;

	@Column(name = "nombre", length = 100)
	private String nombre;

	@Column(name = "fecha_alta")
	private Date fechaAlta;

	@Column(name = "fecha_expiracion")
	private Date fechaExpiracion;

	@Column(name = "fecha_baja")
	private Date fechaBaja;

	/**
	 * Constructor default.
	 */
	public Usuario() {
		super();
	}

	public Long getId() {
		return usuarioId;
	}

	public void setId(Long id) {
		this.usuarioId = id;
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public Date getFechaAlta() {
		return fechaAlta;
	}

	public void setFechaAlta(Date fechaAlta) {
		this.fechaAlta = fechaAlta;
	}

	public Date getFechaExpiracion() {
		return fechaExpiracion;
	}

	public void setFechaExpiracion(Date fechaExpiracion) {
		this.fechaExpiracion = fechaExpiracion;
	}
}